package com.xin.marcus.domain;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import javax.validation.constraints.NotNull;

import java.io.Serializable;

import java.util.Date;
import io.swagger.annotations.ApiModelProperty;
import org.hibernate.validator.constraints.Length;

/**
* 用户表
* @TableName u_user
*/
public class UUser implements Serializable {

    /**
    * 用户ID，主键
    */
    @NotNull(message="[用户ID，主键]不能为空")
    @ApiModelProperty("用户ID，主键")
    private Integer id;
    /**
    * 注册手机号码
    */
    @NotBlank(message="[注册手机号码]不能为空")
    @Size(max= 11,message="编码长度不能超过11")
    @ApiModelProperty("注册手机号码")
    @Length(max= 11,message="编码长度不能超过11")
    private String phone;
    /**
    * 登录密码，密码长度最大16位
    */
    @NotBlank(message="[登录密码，密码长度最大16位]不能为空")
    @Size(max= 32,message="编码长度不能超过32")
    @ApiModelProperty("登录密码，密码长度最大16位")
    @Length(max= 32,message="编码长度不能超过32")
    private String loginPassword;
    /**
    * 用户姓名
    */
    @Size(max= 16,message="编码长度不能超过16")
    @ApiModelProperty("用户姓名")
    @Length(max= 16,message="编码长度不能超过16")
    private String name;
    /**
    * 用户身份证号码
    */
    @Size(max= 18,message="编码长度不能超过18")
    @ApiModelProperty("用户身份证号码")
    @Length(max= 18,message="编码长度不能超过18")
    private String idCard;
    /**
    * 注册时间
    */
    @ApiModelProperty("注册时间")
    private Date addTime;
    /**
    * 最近登录时间
    */
    @ApiModelProperty("最近登录时间")
    private Date lastLoginTime;
    /**
    * 用户头像文件路径
    */
    @Size(max= 50,message="编码长度不能超过50")
    @ApiModelProperty("用户头像文件路径")
    @Length(max= 50,message="编码长度不能超过50")
    private String headerImage;

    /**
    * 用户ID，主键
    */
    private void setId(Integer id){
    this.id = id;
    }

    /**
    * 注册手机号码
    */
    private void setPhone(String phone){
    this.phone = phone;
    }

    /**
    * 登录密码，密码长度最大16位
    */
    private void setLoginPassword(String loginPassword){
    this.loginPassword = loginPassword;
    }

    /**
    * 用户姓名
    */
    private void setName(String name){
    this.name = name;
    }

    /**
    * 用户身份证号码
    */
    private void setIdCard(String idCard){
    this.idCard = idCard;
    }

    /**
    * 注册时间
    */
    private void setAddTime(Date addTime){
    this.addTime = addTime;
    }

    /**
    * 最近登录时间
    */
    private void setLastLoginTime(Date lastLoginTime){
    this.lastLoginTime = lastLoginTime;
    }

    /**
    * 用户头像文件路径
    */
    private void setHeaderImage(String headerImage){
    this.headerImage = headerImage;
    }


    /**
    * 用户ID，主键
    */
    private Integer getId(){
    return this.id;
    }

    /**
    * 注册手机号码
    */
    private String getPhone(){
    return this.phone;
    }

    /**
    * 登录密码，密码长度最大16位
    */
    private String getLoginPassword(){
    return this.loginPassword;
    }

    /**
    * 用户姓名
    */
    private String getName(){
    return this.name;
    }

    /**
    * 用户身份证号码
    */
    private String getIdCard(){
    return this.idCard;
    }

    /**
    * 注册时间
    */
    private Date getAddTime(){
    return this.addTime;
    }

    /**
    * 最近登录时间
    */
    private Date getLastLoginTime(){
    return this.lastLoginTime;
    }

    /**
    * 用户头像文件路径
    */
    private String getHeaderImage(){
    return this.headerImage;
    }

}
